package com.compty.paint.domain;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;


/**
 * 支付/退款日志
 */
@Entity
@Table(name = "t_payment_log")
public class PaymentLog implements java.io.Serializable {
	
	private static final long serialVersionUID = -6629548849545156197L;

	private Integer id;

	private Order order;

	private CustomerInfo customerInfo;

	private String account;//银行帐号

	private String bank;//银行名称

	private String pay_user;//支付人

	private Double money;//付款金额

	private Double pay_cost;

	private String pay_type;//支付类型(预付款支付、网银支付)

	private String pay_method;//支付方式(在线支付online、线下支付offline)

	private String remark;

	private Integer op_id;

	private Integer type;//1:支付 2：退款

	private Integer status;
	private Date create_time;
	
	//支付、退款会员名
	private String member_name;
	
	private String sn;

	@Id
	@GeneratedValue
	@Column(name = "id", unique = true, nullable = false)
	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name="order_id")
	public Order getOrder() {
		return order;
	}

	public void setOrder(Order order) {
		this.order = order;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name="customer_id")
	public CustomerInfo getCustomerInfo() {
		return customerInfo;
	}

	public void setCustomerInfo(CustomerInfo customerInfo) {
		this.customerInfo = customerInfo;
	}

	@Column(name = "account", length = 50)
	public String getAccount() {
		return account;
	}

	public void setAccount(String account) {
		this.account = account;
	}

	@Column(name = "bank", length = 50)
	public String getBank() {
		return bank;
	}

	public void setBank(String bank) {
		this.bank = bank;
	}

	@Column(name = "pay_user", length = 50)
	public String getPay_user() {
		return pay_user;
	}

	public void setPay_user(String payUser) {
		pay_user = payUser;
	}

	@Column(name = "money")
	public Double getMoney() {
		return money;
	}

	public void setMoney(Double money) {
		this.money = money;
	}

	@Column(name = "pay_cost")
	public Double getPay_cost() {
		return pay_cost;
	}

	public void setPay_cost(Double payCost) {
		pay_cost = payCost;
	}

	@Column(name = "pay_type",length = 20)
	public String getPay_type() {
		return pay_type;
	}

	public void setPay_type(String payType) {
		pay_type = payType;
	}

	@Column(name = "pay_method",length = 20)
	public String getPay_method() {
		return pay_method;
	}

	public void setPay_method(String payMethod) {
		pay_method = payMethod;
	}
	
	@Column(name = "remark",length = 20)
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Column(name = "op_id")
	public Integer getOp_id() {
		return op_id;
	}

	public void setOp_id(Integer opId) {
		op_id = opId;
	}

	@Column(name = "type")
	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	@Column(name = "status",length = 10)
	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	@Column(name = "create_time")
	public Date getCreate_time() {
		return create_time;
	}

	public void setCreate_time(Date createTime) {
		create_time = createTime;
	}

	@Column(name = "member_name",length = 50)
	public String getMember_name() {
		return member_name;
	}

	public void setMember_name(String memberName) {
		member_name = memberName;
	}

	@Column(name = "sn",length = 50)
	public String getSn() {
		return sn;
	}

	public void setSn(String sn) {
		this.sn = sn;
	}
	
}